package com.ting.test.algorithms.图;

import java.util.ArrayList;
import java.util.List;

/**
 * 表示图中的一个节点
 */
public class Node {
    protected   int in;//表示入度，有多少个节点直接指向他
    protected  int out;//表示出度，从该节点出发，可以直接指向多少节点
    protected  int val;//表示当前节点的值

    protected ArrayList<Node> nexts; //表示与当前节点直接相邻的节点，注意是从该节点出发，直接指向的节点
    protected ArrayList<Edge> edges; //表示从当前节点出发的所有边

    public Node(int in, int out, int val, ArrayList<Node> nexts, ArrayList<Edge> edges) {
        this.in = in;
        this.out = out;
        this.val = val;
        this.nexts = nexts;
        this.edges = edges;
    }

    public Node(int val) {
        this.val = val;
    }
}
